package homework;

public class HomeWork2 {
    /*创建库 egdb2，指定字符集为UTF8
            切换库

    创建表 sanguo 并指定字符集为UTF8，字段要求如下
    英雄编号id：INT，主键自增长
    英雄名称name：变长，字符宽度为30，不允许为空
    性别gender：定长，字符宽度为1，不允许为空
    国家country：定长，字符宽度为1，不允许为空
    攻击力attack：INT，不允许为空
    防御力defense：INT，不允许为空
            在表中插入数据

    INSERT INTO sanguo
    VALUES (1, '曹操', '男', '魏', 256, 63),
       (2, '张辽', '男', '魏', 328, 69),
               (3, '甄姬', '女', '魏', 168, 34),
               (4, '夏侯渊', '男', '魏', 366, 83),
               (5, '刘备', '男', '蜀', 220, 59),
               (6, '诸葛亮', '男', '蜀', 170, 54),
               (7, '赵云', '男', '蜀', 377, 66),
               (8, '张飞', '男', '蜀', 370, 80),
               (9, '孙尚香', '女', '蜀', 249, 62),
               (10, '大乔', '女', '吴', 190, 44),
               (11, '小乔', '女', '吴', 188, 39),
               (12, '周瑜', '男', '吴', 303, 60),
               (13, '吕蒙', '男', '吴', 330, 71);
    SQL练习
    CREATE DATABASE egdb2 CHARSET=UTF;
    USE egdb2;
    CREATE TABLE sanguo(
        id INT P K A,
        name VARCHAR(30) NOT NULL,
        gender CHAR(1) N,
        country VARCHAR() N
        attack INT N
        defense INT N
    ) CHARSET=UTF8;

    查找所有蜀国人信息，按照攻击力排名
    SELECT name,gender,country
    FROM sanguo
    WHERE country='蜀国'
    ORDER BY attack DESC;

    查找攻击力超过200[包含200]的魏国英雄名字和攻击力并显示为姓名， 攻击力
    SELECT name,attack
    FROM sanguo
    WHERE country='魏国'
    AND attack>200 OR attack=200;

    所有英雄按照攻击力降序排序，如果相同则按照防御升序排序
    SELECT name,gender,attack,defense
    FROM sanguo
    ORDER BY attack DESC,defense;

    查找名字为3个字符的数据
    SELECT name,gender
    FROM sanguo
    WHERE name LIKE '___';

    找到魏国防御力排名2-3名的英雄
    FROM sanguo
    WHERE country='魏国'
    ORDER BY defense DESC
    LIMIT 1,2;

    找出表中的最大攻击力的值？
    表中共有多少个英雄？
    蜀国英雄中攻击值大于200[包含200]的英雄的数量
        计算每个国家的平均攻击力
    统计每个国家男性英雄和女性英雄的平均攻击力
    所有国家的男英雄中 英雄数量最多的前2名的 国家名称及英雄数量
    统计平均攻击力大于250[包含250]的国家的英雄数量*/
}
